package com.mrx.xfriendship.service;

/**
 * 验证码相关服务接口
 *
 * @author Mr.X
 * @since 2023-01-14 11:25
 */
public interface ICaptchaService {

    /**
     * 获取与 key 绑定的验证码
     *
     * @param key 生成一个验证码并与 key 绑定
     * @return 验证码图片内容
     */
    byte[] getCaptcha(String key);

    /**
     * 获取与 key 绑定的验证码字符串
     *
     * @param key 生成一个验证码并与 key 绑定
     * @return 验证码字符串
     */
    String getCaptchaStr(String key);

    String getCaptchaStr();

    /**
     * 验证 验证码是否正确
     *
     * @param key   验证与指定的 key 绑定的验证码 是否为 value
     * @param value 用户输入的 验证码
     * @return 验证码正确返回 true 反之返回 false
     */
    boolean verifyCaptcha(String key, String value);

}
